<?php
namespace Peas\Kernel;

use Peas\Kernel\System\Application;

/**
 * Peas Framework
 *
 * 框架入口
 *
 * @author  Hongzan Zhang <zhanghongzan@163.com>
 * @version $Id$
 */
class Peas
{
    /**
     * 框架版本号
     *
     * @var string
     */
    const VERSION = '1.0 beta';


    /**
     * 初始化
     *
     * @param string $basePath 系统根目录
     */
    public function __construct($basePath = '')
    {
        // 应用程序根目录
        define('_PATH', $basePath);

        // 运行模式（develop, debug, work），支持覆盖
        defined('_MODE') or define('_MODE', 'develop');

        // 运行文件存储目录，支持覆盖
        defined('_PATH_STORAGE') or define('_PATH_STORAGE', $basePath . '/storage');
    }

    /**
     * 启动应用
     *
     * @return void
     */
    public function run()
    {
        // 调试开启
        (_MODE == 'debug') and Debug::begin();

        // 应用启动
        $application = new Application();
        $application->run();

        // 调试结束
        (_MODE == 'debug') and Debug::end();
    }
}
